// 常量和固定值

void main(List<String> args) {
  // 如果定义的变量不会变化，可以使用 final 或 const 来声明。 const 是一个编译时常量， final 是只能被赋值一次的常量。
  final super_name = 'admin';
  // super_name = "zansan"; //会编译错误
  print('super_name: $super_name');

  const PI = 3.1415926;
  const area = PI * 100 * 100;
  print('area: $area'); // area: 31415.926000000003

  const weeks = const ['星期一', '星期二', '星期三'];
  print('length: ${weeks.length}, weeks[1]: ${weeks[1]}'); //length: 3, weeks[1]: 星期二

  Person zs = new Person('001', '张三', 18);
  print(zs); // {"id":"001", "name":"张三", "age":18}
}

class Person {
  final String id;
  String name;
  int age;
  Person(this.id, this.name, this.age);

  @override
  String toString() {
    return '{"id":"$id", "name":"$name", "age":$age}';
  }
}
